Among other functions, a network component, such as a network router, switch, etc., routes or switches data from a source to a destination. For example, a network switch may receive network packets on one or more input ports and route or switch these packets to one or more output ports. According to various network communications protocols, ingress packets which enter the switch may be scheduled for communication by the switch as egress packets according to suitable packet priorities for reliable data transfer.
In this context, as packets are received, a switch processes the packets according to packet priorities and protocols, so that the packets may be ultimately transmitted toward network destinations. Especially when a network component operates during a time of high packet processing demand, it is important for the network component to operate efficiently. In certain cases, the rate at which data is received by the network component may even exceed the network component's ability to process and transmit that data. In some worst-case situations, a network component may drop packets if the rate at which data is received by the network component exceeds the network component's ability to process and transmit that data and, for example, a buffer or memory overrun occurs.